package com.uhu.tag.service;

import com.uhu.tag.dto.req.TagGroupSaveReqDTO;
import com.uhu.tag.dto.req.TagGroupUpdateReqDTO;
import com.uhu.tag.dto.res.TagGroupListByCategoryIdResDTO;
import com.uhu.tag.entity.TagGroup;
import com.baomidou.mybatisplus.extension.service.IService;

import java.util.List;

/**
 * <p>
 * 标签组表 服务类
 * </p>
 *
 * @author liujunjie
 * @since 2023-12-01
 */
public interface ITagGroupService extends IService<TagGroup> {

    /**
     * 根据标签大类id查询标签组列表
     * @param tagCategoryId
     * @return
     */
    List<TagGroupListByCategoryIdResDTO> tagGroupListQueryByCategoryId(Long tagCategoryId);

    /**
     * 新增标签组接口
     * @param tagGroupSaveReqDTO
     */
    void saveTagGroup(TagGroupSaveReqDTO tagGroupSaveReqDTO);

    /**
     * 编辑标签组接口
     * @param tagGroupUpdateReqDTO
     */
    void updateTagGroup(TagGroupUpdateReqDTO tagGroupUpdateReqDTO);

    /**
     * 标签大类下标签组排序
     * @param ids
     * @param tagCategoryId
     */
    void sortTagGroup(Long[] ids, Long tagCategoryId);

    /**
     * 删除标签组
     * @param tagGroupId
     */
    void deleteTagGroup(Long tagGroupId);
}
